package com.ruoyi.userr.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.ibatis.type.Alias;

/**
 * 菜谱管理对象 recipes
 * 
 * @author lpt
 * @date 2025-08-14
 */
@Alias("UserRecipes")
public class Recipes extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 菜谱唯一ID */
    private String id;

    /** 作者ID */
    @Excel(name = "作者ID")
    private String userId;

    /** 菜谱标题 */
    @Excel(name = "菜谱标题")
    private String title;

    /** 媒体类型：1-图片，2-视频 */
    @Excel(name = "媒体类型：1-图片，2-视频")
    private Long mediaType;

    /** 封面资源URL */
    @Excel(name = "封面资源URL")
    private String coverUrl;

    /** 通用简介 */
    @Excel(name = "通用简介")
    private String introduction;

    /** 视频补充描述（仅视频） */
    @Excel(name = "视频补充描述", readConverterExp = "仅=视频")
    private String videoDescription;

    /** 视频时长（秒，仅media_type=2） */
    @Excel(name = "视频时长", readConverterExp = "秒=，仅media_type=2")
    private String videoDuration;

    /** 浏览量 */
    @Excel(name = "浏览量")
    private String viewCount;

    /** 关联耗时表 */
    @Excel(name = "关联耗时表")
    private String cookTimeId;

    /** 关联难度表 */
    @Excel(name = "关联难度表")
    private String difficultyId;

    /** 关联分类表 */
    @Excel(name = "关联分类表")
    private String categoryId;

    /** 状态（0-正常，1-下架） */
    @Excel(name = "状态", readConverterExp = "0=-正常，1-下架")
    private Integer status;

    /** 收藏数 */
    @Excel(name = "收藏数")
    private String collectCount;

    /** 是否删除：0正常 1删除 */
    @Excel(name = "是否删除：0正常 1删除")
    private Integer del;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setUserId(String userId) 
    {
        this.userId = userId;
    }

    public String getUserId() 
    {
        return userId;
    }

    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }

    public void setMediaType(Long mediaType) 
    {
        this.mediaType = mediaType;
    }

    public Long getMediaType() 
    {
        return mediaType;
    }

    public void setCoverUrl(String coverUrl) 
    {
        this.coverUrl = coverUrl;
    }

    public String getCoverUrl() 
    {
        return coverUrl;
    }

    public void setIntroduction(String introduction) 
    {
        this.introduction = introduction;
    }

    public String getIntroduction() 
    {
        return introduction;
    }

    public void setVideoDescription(String videoDescription) 
    {
        this.videoDescription = videoDescription;
    }

    public String getVideoDescription() 
    {
        return videoDescription;
    }

    public void setVideoDuration(String videoDuration) 
    {
        this.videoDuration = videoDuration;
    }

    public String getVideoDuration() 
    {
        return videoDuration;
    }

    public void setViewCount(String viewCount) 
    {
        this.viewCount = viewCount;
    }

    public String getViewCount() 
    {
        return viewCount;
    }

    public void setCookTimeId(String cookTimeId) 
    {
        this.cookTimeId = cookTimeId;
    }

    public String getCookTimeId() 
    {
        return cookTimeId;
    }

    public void setDifficultyId(String difficultyId) 
    {
        this.difficultyId = difficultyId;
    }

    public String getDifficultyId() 
    {
        return difficultyId;
    }

    public void setCategoryId(String categoryId) 
    {
        this.categoryId = categoryId;
    }

    public String getCategoryId() 
    {
        return categoryId;
    }

    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }

    public void setCollectCount(String collectCount) 
    {
        this.collectCount = collectCount;
    }

    public String getCollectCount() 
    {
        return collectCount;
    }

    public void setDel(Integer del) 
    {
        this.del = del;
    }

    public Integer getDel() 
    {
        return del;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("title", getTitle())
            .append("mediaType", getMediaType())
            .append("coverUrl", getCoverUrl())
            .append("introduction", getIntroduction())
            .append("videoDescription", getVideoDescription())
            .append("videoDuration", getVideoDuration())
            .append("viewCount", getViewCount())
            .append("cookTimeId", getCookTimeId())
            .append("difficultyId", getDifficultyId())
            .append("categoryId", getCategoryId())
            .append("createTime", getCreateTime())
            .append("status", getStatus())
            .append("collectCount", getCollectCount())
            .append("del", getDel())
            .toString();
    }
}
